package edu.uic.keyoutcomestrackertool.fragments;

import java.util.Calendar;

import android.app.DatePickerDialog;
import android.app.DatePickerDialog.OnDateSetListener;
import android.app.Dialog;
import android.app.DialogFragment;
import android.os.Bundle;
import android.widget.DatePicker;

public class DatePickerFragment extends DialogFragment implements OnDateSetListener {

	private int mId;
	private DatePickerDialogListener mListener;

	public static DatePickerFragment newInstance(int id) {
		Bundle args = new Bundle();
		args.putInt("picker_id", id);
		DatePickerFragment fragment = new DatePickerFragment();
		fragment.setArguments(args);
		return fragment;
	}

	@Override public Dialog onCreateDialog(Bundle savedInstanceState) {
		final Calendar c = Calendar.getInstance();
		int year = c.get(Calendar.YEAR);
		int month = c.get(Calendar.MONTH);
		int day = c.get(Calendar.DAY_OF_MONTH);

		mId = getArguments().getInt("picker_id");
		mListener = getActivity() instanceof DatePickerDialogListener ? (DatePickerDialogListener) getActivity() : null;

		// Create a new instance of TimePickerDialog and return it
		return new DatePickerDialog(getActivity(), this, year, month, day);
	}


	@Override
	public void onDateSet(DatePicker view, int year, int month, int day) {
		if (mListener != null) mListener.onDateSet(mId, view, year, month, day);
	}

	public static interface DatePickerDialogListener {
		public void onDateSet(int id, DatePicker view, int year, int month, int day);
	}
}


